home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / u_man / cat1 / rqsall.z / rqsall
Encoding:
Text File  |  2002-10-03  |  15.5 KB  |  273 lines

  1. RQSALL(1)                                             Last changed: 1-22-99
  2.  
  3.  
  4. NNAAMMEE
  5.      rrqqssaallll - Requickstarts out-of-sync ELF shared objects/executables
  6.  
  7. SSYYNNOOPPSSIISS
  8.      rrqqssaallll [_o_p_t_i_o_n_s] _i_f_i_l_e
  9.  
  10. IIMMPPLLEEMMEENNTTAATTIIOONN
  11.      IRIX systems
  12.  
  13. DDEESSCCRRIIPPTTIIOONN
  14.      The rrqqssaallll command is used to requickstart ELF files that are out of
  15.      sync on a system.  This command reads a description of the ELF files
  16.      that have been recorded (in an undocumented plain text format) in
  17.      _i_f_i_l_e.  Those descriptions are generated using the rrqqssrreeaadd command.
  18.      Using those descriptions, this command determines which ELF files will
  19.      not quickstart when executed.  For each of those files, this command
  20.      will normally execute the command //uussrr//eettcc//rrqqss or //uussrr//eettcc//rrqqss6644 (as
  21.      appropriate) on that file to resynchronize that file with the ELF
  22.      files that it depends on (for example, the objects that are on that
  23.      file's lliibblliisstt).  This command is normally invoked whenever software
  24.      is installed using iinnsstt or sswwmmggrr.  The _i_f_i_l_e that it is invoked on is
  25.      //vvaarr//iinnsstt//..rrqqssffiilleess.  At most, one _s_o__l_o_c_a_t_i_o_n_s file per ABI can
  26.      possibly be read.  At most, one _s_o__l_o_c_a_t_i_o_n_s file per ABI can possibly
  27.      be updated.  By default, _s_o__l_o_c_a_t_i_o_n_s files found are updated (though
  28.      the contents may not change, the files will still be rewritten).
  29.  
  30.      rrqqssaallll uses only the $$rraannggee entry from any _s_o__l_o_c_a_t_i_o_n_s file entry to
  31.      help determine what address range should be assigned if the DSO named
  32.      in that entry needs to be moved.  If no $$rraannggee entry is found for a
  33.      DSO that must be moved, a default range is used.  The address assigned
  34.      a DSO being moved is not allowed to conflict  with any DSO previously
  35.      processed in this execution of rrqqssaallll.  Within any range, rrqqssaallll
  36.      selects the highest available address.  For 64-bit objects, the
  37.      default address range is 0x00400000 to 0x1000000000.  For 32-bit
  38.      objects (both old and new 32-bit ABIs), the default address range is
  39.      0x00400000 to 0x60000000.  If the dso cannot be moved to that range
  40.      (the range is full from other DSOs or the range is too small) it is an
  41.      error (a warning is emitted on stderr), and the DSO will not be moved.
  42.  
  43.      Cycles of DSOs (where the DSO which references itself via its library
  44.      list directly or indirectly) are not properly handled.
  45.  
  46.      --ccmmdd _r_q_s__c_m_d
  47.           Change the command to be run on out-of-sync 32-bit file to be
  48.           _r_q_s__c_m_d.  By default, the command that is executed is
  49.           //uussrr//eettcc//rrqqss.
  50.  
  51.      --ccmmdd6644 _r_q_s_6_4__c_m_d
  52.           Change the command to be run on out-of-sync 64-bit file to be
  53.           _r_q_s_6_4__c_m_d.  By default, the command that is executed is
  54.           //uussrr//eettcc//rrqqss6644.
  55.  
  56.      --ccmmdd__pprreeffiixx _p_a_t_h
  57.           Prepends _p_a_t_h to the name of the command to be run on an out-of-
  58.           sync file.
  59.  
  60.      --ccoouunntt
  61.           Prints to stdout the total number of files that were
  62.           requickstarted, the number of files that were successfully
  63.           requickstarted, and the number of files failed to be
  64.           requickstarted.
  65.  
  66.      --ddeebbuugg _n_o_e_x_e_c
  67.           Keeps the out-of-sync files from actually being requickstarted.
  68.           This is typically used as a debugging aid to determine which
  69.           files will be requickstarted.  This option prevents
  70.           requickstarting files and also prevents updating of any
  71.           _s_o__l_o_c_a_t_i_o_n_s file.
  72.  
  73.      --ddeebbuugg _r_e_a_s_o_n
  74.           Dumps relocation information.  Displays the reason why a file
  75.           needs to be requickstarted.
  76.  
  77.      --ffoorrccee
  78.           Files that are marked as non-quickstart will be requickstarted.
  79.  
  80.      --iinnsstt #_f_i_l_e_d_e_s_c or --iinnsstt _f_i_l_e_n_a_m_e
  81.           A special flag used when calling this command from our
  82.           installation software.  Status is written out to either the file
  83.           descriptor given by _f_i_l_e_d_e_s_c (for example, to write to file
  84.           descriptor 10, --iinnsstt ##1100 would be the correct option) or to the
  85.           file given by _f_i_l_e_n_a_m_e.  The output is appended if specified by
  86.           #_f_i_l_e_d_e_s_c.  The output is written (not appended) if specified by
  87.           _f_i_l_e_n_a_m_e.  The information written includes the count of the
  88.           files that are going to be requickstarted. For each file that is
  89.           being requickstarted, the name of the file, its original iinnsstt
  90.           cchheecckkssuumm value, and an indication of success ('S') or failure
  91.           ('F') is indicated.  The fields are separated by CCoonnttrrooll--AA's.
  92.  
  93.      --oo _o_u_t_f_i_l_e
  94.           Causes an updated version (after requickstarting) of the
  95.           description file to be written to _o_u_t_f_i_l_e.  _o_u_t_f_i_l_e can be the
  96.           same as the input file, _f_i_l_e.
  97.  
  98.      --pprreeffiixx _d_i_r
  99.           Treats _d_i_r as the prefix for the files being read.  When the
  100.           description file is read, the prefix is prepended to all file
  101.           names.  Similarly, when the output file is generated, the prefix
  102.           directory is removed.  This option, along with the --rroooott option,
  103.           is used to requickstart files that are located in a directory
  104.           beginning at other than /e.
  105.  
  106.      --rreessccaann
  107.           Causes the descriptions of the files recorded in _f_i_l_e to be
  108.           rescanned.  This option would be used in the case where the files
  109.           on the system have been changed since the last time the
  110.           descriptions have been recorded.
  111.  
  112.      --rroooott _d_i_r
  113.           Passes _d_i_r down to rrqqss to adjust where that command will look for
  114.           shared objects.
  115.  
  116.      --ttiimmeessttaammpp _v_a_l_u_e
  117.           Passes down _v_a_l_u_e to rrqqss as the timestamp to be recorded in the
  118.           requickstarted file.
  119.  
  120.      --rrlldd _r_l_d_n_a_m_e
  121.           Supplies the name of the rrlldd(1).  If this option is supplied, the
  122.           address of the rrlldd applicable to the object is checked against
  123.           the rrlldd address in the object (checked against
  124.           DDTT__MMIIPPSS__RRLLDD__TTEEXXTT__RREESSOOLLVVEE__AADDDDRR) and if the addresses do not match,
  125.           the address of the rrlldd given by _r_l_d_n_a_m_e is passed to rrqqss with the
  126.           --rrlldd__aaddddrr option.  If nothing else is to be changed in this
  127.           object, the --rrlldd__aaddddrr__oonnllyy option is also passed to rrqqss.  This
  128.           option may not work well for 32-bit objects since the rrlldd address
  129.           need not be identical for old 32-bit ABI and new 32-bit ABI rrlldd,
  130.           but there is no way to separate the different versions of rrlldd for
  131.           the different 32-bit ABIs in this option.
  132.  
  133.      --cchheecckk__rreeggiissttrryy _l_o_c_a_t_i_o_n__f_i_l_e__f_o_r__3_2__b_i_t__o_b_j_e_c_t_s
  134.           Uses _l_o_c_a_t_i_o_n__f_i_l_e__f_o_r__3_2__b_i_t__o_b_j_e_c_t_s as the list of potential
  135.           shared object locations.  This information is used when
  136.           determining a new location for a 32-bit shared object.  The
  137.           default is /_l_i_b/_s_o__l_o_c_a_t_i_o_n_s for old 32-bit ABI objects and
  138.           /_l_i_b_3_2/_s_o__l_o_c_a_t_i_o_n_s for new 32-bit ABI objects.  This option is
  139.           ignored (and the default is used) if --cchheecckk__rreeggiissttrryy__ppaatthh is
  140.           provided.
  141.  
  142.      --cchheecckk__rreeggiissttrryy__6644 _l_o_c_a_t_i_o_n__f_i_l_e__f_o_r__6_4__b_i_t__o_b_j_e_c_t_s
  143.           Uses _l_o_c_a_t_i_o_n__f_i_l_e__f_o_r__6_4__b_i_t__o_b_j_e_c_t_s as the list of potential
  144.           shared object locations.  This information is used when
  145.           determining a new location for a 64-bit shared object.  The
  146.           default is /_l_i_b_6_4/_s_o__l_o_c_a_t_i_o_n_s.  This option is ignored (and the
  147.           default is used) if --cchheecckk__rreeggiissttrryy__ppaatthh is provided.
  148.  
  149.      --cchheecckk__rreeggiissttrryy__ppaatthh _p_a_t_h_n_a_m_e
  150.           Changes the default path of the registry file to check to
  151.           _p_a_t_h_n_a_m_e.  The default value is //uussrr.
  152.  
  153.      --uuppddaattee__rreeggiissttrryy _l_o_c_a_t_i_o_n__f_i_l_e__f_o_r__3_2__b_i_t__o_b_j_e_c_t_s
  154.           Uses _l_o_c_a_t_i_o_n__f_i_l_e__f_o_r__3_2__b_i_t__o_b_j_e_c_t_s as the list of potential
  155.           shared object locations.  This information is used when
  156.           determining a new location for a 32-bit shared object.  The
  157.           default for this is /_l_i_b/_s_o__l_o_c_a_t_i_o_n_s for old 32-bit ABI objects
  158.           and /_l_i_b_3_2/_s_o__l_o_c_a_t_i_o_n_s for new 32-bit ABI objects.  This option
  159.           is ignored (and the default is used) if --uuppddaattee__rreeggiissttrryy__ppaatthh is
  160.           provided.
  161.  
  162.      --uuppddaattee__rreeggiissttrryy__6644 _l_o_c_a_t_i_o_n__f_i_l_e__f_o_r__6_4__b_i_t__o_b_j_e_c_t_s
  163.           Uses _l_o_c_a_t_i_o_n__f_i_l_e__f_o_r__6_4__b_i_t__o_b_j_e_c_t_s as the list of potential
  164.           shared object locations.  This information is used when
  165.           determining a new location for a 64-bit shared object.  The
  166.           default for this is /_l_i_b_6_4/_s_o__l_o_c_a_t_i_o_n_s.  This option is ignored
  167.           (and the default is used) if --uuppddaattee__rreeggiissttrryy__ppaatthh is provided.
  168.  
  169.      --uuppddaattee__rreeggiissttrryy__ppaatthh _p_a_t_h_n_a_m_e
  170.           Changes the default path of the registry file update to _p_a_t_h_n_a_m_e.
  171.           The default value is //uussrr.
  172.  
  173.      --nnoo__rreeggiissttrryy
  174.           No default registry files should be used for checking.
  175.  
  176.      --ffiillee _o_b_j_n_a_m_e
  177.           The object is requickstarted to this single object.  Other object
  178.           requickstarting is suppressed when this option is specified.  If
  179.           multiple instances of this option are specified, only the last is
  180.           effective.
  181.  
  182.      --lloogg _l_o_g_f_i_l_e_n_a_m_e
  183.           Writes a file name and action letter (T for requickstarted) in
  184.           the named file for each file requickstarted.  The file is opened
  185.           for output (not append) so previous contents are deleted.
  186.  
  187.      --nnoo__ttiimmeessttaammpp
  188.           Stops rrqqssaallll from passing the --ttiimmeessttaammpp option to rrqqss.
  189.  
  190.      --nnoo__eecchhoo
  191.           Turns off echoing to standard output of each rrqqss command to be
  192.           executed.
  193.  
  194.      --rrqqss__uuppddaattee__rreeggiissttrryy
  195.           Enables passing of --cchheecckk__rreeggiissttrryy and/or --uuppddaattee__rreeggiissttrryy
  196.           commands to rrqqss using the file names from the --cchheecckk__rreeggiissttrryy,
  197.           --uuppddaattee__rreeggiissttrryy, --cchheecckk__rreeggiissttrryy__6644, --uuppddaattee__rreeggiissttrryy__6644
  198.           options.  Suppresses update of any ssoo__llooccaattiioonnss file by rrqqssaallll
  199.           and lets rrqqss or rrqqss6644 do the update.
  200.  
  201.      --rrqqss__eerrrroorr__lloogg _r_q_s_l_o_g_n_a_m_e
  202.           Passes the rrqqssllooggnnaammee to rrqqss via the --lloogg option.
  203.  
  204.      --vv   Turns on additional output.  Primarily used for debugging rrqqssaallll.
  205.  
  206.      --ssaammee__aaggee
  207.           Allows rrqqss to run even if no dependent DSO changed (that is, the
  208.           library-list entries seem to have the same identical checksums
  209.           and dates as the actual referenced DSOs).
  210.  
  211.      --rreeaadd__oonnllyy__rreeggiissttrryy
  212.           Open registry files as read only.  Useful for rrqqss testing.
  213.  
  214.      --mmoovvee
  215.           Reassign load addresses for every DSO listed in the description
  216.           file.  Each DSO will be requickstarted using the --llooaadd__aaddddrreessss
  217.           option of rrqqss.  Although slow, the use of this option will
  218.           defragment virtual address ranges assigned to each DSO and
  219.           maximize available contiguous heap.  See Example 2.
  220.  
  221. EEXXAAMMPPLLEESS
  222.      Example 1:  The following example shows a typical invocation of this
  223.      command:
  224.  
  225.           cp /var/inst/.rqsfiles t
  226.  
  227.           rqsall -force -o t -update_registry /usr/lib/so_locations \
  228.           -update_registry_64 /usr/lib64/so_locations  t
  229.           # Make sure t is not empty!
  230.  
  231.           cp t t1
  232.  
  233.           rqsall -rescan -same_age -force -move -o t2 t1
  234.           # Make sure t2 is not empty!
  235.  
  236.           cp t2 /var/inst/.rqsfiles
  237.  
  238.      Example 2:  The following example shows, by specifying the --mmoovvee
  239.      option, a typical invocation of rrqqssaallll for every DSO listed in
  240.      //vvaarr//iinnsstt//..rrqqssffiilleess, using the default _s_o__l_o_c_a_t_i_o_n_s files:
  241.  
  242.           # Ensure that you save a copy of your original .rqsfiles!
  243.           # If lost it is hard to recover!
  244.           cp /var/inst/.rqsfiles/var/inst/bkuprqsfiles
  245.  
  246.           rqsall -rescan -same_age -force -move \
  247.           -o /var/inst/.rqsfiles /var/inst/.rqsfiles
  248.  
  249. NNOOTTEESS
  250.      Usually, only a single _i_f_i_l_e is specified on the command line because
  251.      rrqqssrreeaadd creates only one file.  Because this is the normal case (and
  252.      the only case used in practice) the SYNOPSIS shows only one _i_f_i_l_e.  If
  253.      multiple files are specified, they are logically concatenated.
  254.      However, each _i_f_i_l_e must be complete in the sense that the information
  255.      (in the undocumented plain text format used) contains complete
  256.      information sets for each object.
  257.  
  258. FFIILLEESS
  259.      //uussrr//eettcc//rrqqssaallll
  260.      //uussrr//eettcc//rrqqss
  261.      //uussrr//eettcc//rrqqss3322
  262.      //uussrr//eettcc//rrqqss6644
  263.      //uussrr//lliibb//ssoo__llooccaattiioonnss   (for old 32-bit ABI)
  264.      //uussrr//lliibb3322//ssoo__llooccaattiioonnss (for new 32-bit ABI)
  265.      //uussrr//lliibb6644//ssoo__llooccaattiioonnss
  266.      //vvaarr//iinnsstt//..rrqqssffiilleess
  267.  
  268. SSEEEE AALLSSOO
  269.      rrqqss(1), rrqqss6644(1), rrqqssrreeaadd(1), rrqqsspprriinntt(1), lldd(1), rrlldd(1), iinnsstt(1M),
  270.      sswwmmggrr(1M)
  271.  
  272.      This man page is available only online.
  273.